home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Language/OS - Multiplatform Resource Library
/
LANGUAGE OS.iso
/
a_utils
/
perl
/
perl5a1.lha
/
perl5alpha1
/
do
/
msgsnd
< prev
next >
Wrap
Text File
|
1992-08-15
|
523b
|
27 lines
int
do_msgsnd(arglast)
int *arglast;
{
#ifdef HAS_MSG
register STR **st = stack->ary_array;
register int sp = arglast[0];
STR *mstr;
char *mbuf;
int id, msize, flags;
id = (int)str_gnum(st[++sp]);
mstr = st[++sp];
flags = (int)str_gnum(st[++sp]);
mbuf = str_get(mstr);
if ((msize = mstr->str_cur - sizeof(long)) < 0) {
errno = EINVAL;
return -1;
}
errno = 0;
return msgsnd(id, (struct msgbuf *)mbuf, msize, flags);
#else
fatal("msgsnd not implemented");
#endif
}